package com.geek.factory.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.geek.factory.entity.StockCheckTask;

import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author author
 * @since 2025-06-29
 */
public interface IStockCheckTaskService extends IService<StockCheckTask> {

    /**
     * 创建盘点任务并计算分配数量
     * @param task 任务信息
     * @return 创建是否成功
     */
    boolean createTask(StockCheckTask task);

    /**
     * 更新任务进度
     * @param taskId 任务ID
     * @param completedItems 已完成数量
     * @return 更新是否成功
     */
    boolean updateTaskProgress(Integer taskId, Integer completedItems);

    /**
     * 更新任务状态
     * @param taskId 任务ID
     * @param status 状态
     * @return 更新是否成功
     */
    boolean updateTaskStatus(Integer taskId, String status);

    /**
     * 获取盘点任务统计信息
     * @param checkId 盘点单ID
     * @return 统计信息
     */
    Map<String, Object> getTaskStats(Integer checkId);
}